package com.ruicar.afs.cloud.common.modules.apply.dto;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.ruicar.afs.cloud.common.modules.apply.enums.ChannelTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @author: Lee
 * @date: 2020/5/11 19:39
 * @description: 渠道基本信息
 */
@Data
public class ChannelBasicInfoDTO {
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "渠道Id")
    @NotNull(message = "渠道Id不能为空")
    private Long channelId;
    @ApiModelProperty(value = "渠道code码")
    @NotBlank(message = "渠道code码不能为空")
    private String channelCode;
    @ApiModelProperty(value = "渠道名称")
    @NotBlank(message = "渠道名称不能为空")
    private String channelFullName;
    @ApiModelProperty(value = "渠道管理员真实姓名")
    private String channelAdmin;
    @ApiModelProperty(value = "渠道类型")
    @NotNull(message = "渠道类型不能为空")
    private ChannelTypeEnum channelType;
    @ApiModelProperty(value = "管理员身份证号码")
    @NotBlank(message = "管理员身份证号码不能为空")
    private String identityNumber;
    @ApiModelProperty(value = "管理员手机号")
    private String phone;
    @ApiModelProperty(value = "管理员邮箱")
    private String email;
    @ApiModelProperty(value = "允许创建层级")
    @NotNull(message = "允许创建层级要不能为空")
    @Min(value = 1, message = "允许创建层级不能小于1")
    private Integer hierarchy;
    @ApiModelProperty(value = "账号允许创建数量")
    private Integer newCarUserHierarchy;
    @ApiModelProperty(value = "账号允许创建数量")
    private Integer oldCarUserHierarchy;
    // add by sijun.yu 2020-7-7
    @ApiModelProperty(value = "渠道归属")
    private String channelBelong;
    @ApiModelProperty(value = "进件是否关联车商")
    private String choiceCardealerSwitch;
    @ApiModelProperty(value = "业务类型 01-新车：02-二手车")
    private String businessType;
    @ApiModelProperty(value = "二手车进件是否关联车商")
    private String choiceCardealerSwitchOld;
}
